#include <REGX52.H>
#include "Timer.h"

sbit Motor = P1^0;

unsigned char Counter,Compare;	//计数值和比较值，用于输出PWM

/**
  * @brief		电机初始化
  * @parm		无
  * @retval		无
  */
void Motor_Init()
{
	Timer1_Init();
}

/**
  * @brief		设置PWM比较值
  * @parm		Speed：比较值，范围：0 ~ 100
  * @retval		无
  */
void Motor_SetSpeed(unsigned char Speed)
{
	Compare = Speed;
}

/**
  * @brief		电机的中断函数模版
  * @parm		无
  * @retval		无
  */
void Timer1_Routine() interrupt 3
{
	TL1 = 0x91;		//设置定时初值
	TH1 = 0xFF;		//设置定时初值
	Counter++;
	Counter %= 100;	//计数值变化范围限制在0~99
	if(Counter < Compare)	//计数值小于比较值
	{
		Motor = 1;		//输出1
	} 
	else				//计数值大于比较值
	{
		Motor = 0;		//输出0
	}
}